看了下Intel手册,有些东西大概明白了,但是又碰到一个新的问题。
问题的来源是:我们在实模式下,要使用jmp指令跳转到保护模式下,一般的书上说的都是16位的偏移,也就是说跳过去的不管是32位还是16位的代码段,偏移不能超过0xffff,如果我希望超过0x10000呢?我自然就想到了段前缀 66h和67h,
疑问1:这2个段前缀可以使用在jmp指令上吗?
不能就不说了,如果能,那么我应该使用66h在jmp之前,用来逆转操作数大小为32位,但是新的问题是,66h,0ea,offset,segment这条指令中,offset会被这条前缀所影响而读入一个32位的偏移吗?segment呢?
谢谢!
|